#include <iostream>

using namespace std;
//友元
//友元的目的就是让一个函数或者类，访问另一个类中私有成员
//友元的关键字为:friend
//友元的三种实现
//1、全局函数做友元
//2、类做友元
//3、成员函数做友元

//建筑物类
class Building {
    friend void goodGay(Building *building);//goodGuy全局函数是Building类的好朋友，可以访问Building中的私有成员

private:
    string bedRoom;//卧室
public:
    string sittingRoom;//客厅
    Building() {
        this->bedRoom = "卧室";
        this->sittingRoom = "客厅";
    }

};

//全局函数做友元
void goodGay(Building *building) {
    cout << "好朋友正在访问" << building->sittingRoom << endl;
    cout << "好朋友正在访问" << building->bedRoom << endl;
}

int main() {
    Building building;
    goodGay(&building);
    return 0;
}

